package com.shujia.exception_;

import org.junit.Test;
import org.omg.CosNaming.IstringHelper;

import java.util.Scanner;

public class Homework {


    @Test
    public void test1() {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();

        try {
            isTriangle(a, b, c);
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
            System.out.println(e.getMessage());
        }

    }


    /*
    2.编写一个计算N个整数平均值的程序。程序应该提示用户输入N的值，如何必须输入所有N个数。
    如果用户输入的值是一个负数，则应该抛出一个异常并捕获，提示“N必须是正数或者0”。并提示用户再次输入该数
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        double sum = 0;
        for (int i = 1; i <= n; i++) {
            System.out.print("请输入第" + i + "数字");
            int num = sc.nextInt();
            try {
                if (num < 0) {
                    throw new Exception("N必须是正数或者0");
                }
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println(e.getMessage());
                i--;
                continue;
            }
            sum += num;
        }
        System.out.println(sum / n);
    }

    /*
    1.写一个方法void isTriangle(int a,int b,int c)，判断三个参数是否能构成一个三角形，
     如果不能则抛出异常 IllegalArgumentException，显示异常信息 “a,b,c不能构成三角形”，
    如果可以构成则显示三角形三个边长，在主方法中得到命令行输入的三个整数， 调用此方法，并捕获异常。
     */
    public static void isTriangle(int a, int b, int c) {
        if (a + b <= c || a + c <= b || b + c <= a) {
            throw new IllegalArgumentException("a,b,c不能构成三角形");
        }
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
}
